package com.ruoyi.bl.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.entity.SysDept;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 购物车对象 bl_cart
 * 
 * @author ruoyi
 * @date 2024-11-27
 */
public class BlCart extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 购物车表 */
    private Long cartId;

    /** 部门ID */
    @Excel(name = "部门ID")
    private Long deptId;

    /** 用户id */
    @Excel(name = "用户id")
    private Long userId;

    /** session */
    @Excel(name = "session")
    private String sessionId;

    /** 商品id */
    @Excel(name = "商品id")
    private Long goodsId;

    /** 库存ID */
    @Excel(name = "库存ID")
    private Long storeId;

    /** 商品货号 */
    @Excel(name = "商品货号")
    private String goodsSn;

    /** 商品名称 */
    @Excel(name = "商品名称")
    private String goodsName;

    /** 本店价 */
    @Excel(name = "本店价")
    private BigDecimal goodsPrice;

    /** 会员折扣价 */
    @Excel(name = "会员折扣价")
    private BigDecimal memberGoodsPrice;

    /** 购买数量 */
    @Excel(name = "购买数量")
    private Integer goodsNum;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private String originalImg;

    /** 购物车选中状态 */
    @Excel(name = "购物车选中状态")
    private Integer selected;

    /** 购物车状态0:正常1:失效 */
    @Excel(name = "购物车状态0:正常1:失效")
    private Integer cartStatus;

    /** 加入购物车的时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "加入购物车的时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date addTime;

    private SysDept dept;

    public void setCartId(Long cartId) 
    {
        this.cartId = cartId;
    }

    public Long getCartId() 
    {
        return cartId;
    }
    public void setDeptId(Long deptId) 
    {
        this.deptId = deptId;
    }

    public Long getDeptId() 
    {
        return deptId;
    }
    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }
    public void setSessionId(String sessionId) 
    {
        this.sessionId = sessionId;
    }

    public String getSessionId() 
    {
        return sessionId;
    }
    public void setGoodsId(Long goodsId) 
    {
        this.goodsId = goodsId;
    }

    public Long getGoodsId() 
    {
        return goodsId;
    }
    public void setStoreId(Long storeId) 
    {
        this.storeId = storeId;
    }

    public Long getStoreId() 
    {
        return storeId;
    }
    public void setGoodsSn(String goodsSn) 
    {
        this.goodsSn = goodsSn;
    }

    public String getGoodsSn() 
    {
        return goodsSn;
    }
    public void setGoodsName(String goodsName) 
    {
        this.goodsName = goodsName;
    }

    public String getGoodsName() 
    {
        return goodsName;
    }
    public void setGoodsPrice(BigDecimal goodsPrice) 
    {
        this.goodsPrice = goodsPrice;
    }

    public BigDecimal getGoodsPrice() 
    {
        return goodsPrice;
    }
    public void setMemberGoodsPrice(BigDecimal memberGoodsPrice) 
    {
        this.memberGoodsPrice = memberGoodsPrice;
    }

    public BigDecimal getMemberGoodsPrice() 
    {
        return memberGoodsPrice;
    }
    public void setGoodsNum(Integer goodsNum) 
    {
        this.goodsNum = goodsNum;
    }

    public Integer getGoodsNum() 
    {
        return goodsNum;
    }
    public void setOriginalImg(String originalImg) 
    {
        this.originalImg = originalImg;
    }

    public String getOriginalImg() 
    {
        return originalImg;
    }
    public void setSelected(Integer selected) 
    {
        this.selected = selected;
    }

    public Integer getSelected() 
    {
        return selected;
    }

    public Integer getCartStatus() {
        return cartStatus;
    }

    public void setCartStatus(Integer cartStatus) {
        this.cartStatus = cartStatus;
    }

    public void setAddTime(Date addTime)
    {
        this.addTime = addTime;
    }

    public Date getAddTime() 
    {
        return addTime;
    }

    public SysDept getDept() {
        return dept;
    }

    public void setDept(SysDept dept) {
        this.dept = dept;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("cartId", getCartId())
            .append("deptId", getDeptId())
            .append("userId", getUserId())
            .append("sessionId", getSessionId())
            .append("goodsId", getGoodsId())
            .append("storeId", getStoreId())
            .append("goodsSn", getGoodsSn())
            .append("goodsName", getGoodsName())
            .append("goodsPrice", getGoodsPrice())
            .append("memberGoodsPrice", getMemberGoodsPrice())
            .append("goodsNum", getGoodsNum())
            .append("originalImg", getOriginalImg())
            .append("selected", getSelected())
            .append("addTime", getAddTime())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
